Switch to an extended form of _NET_WM_SYNC_REQUEST_COUNTER
authorOwen W. Taylor <otaylor@fishsoup.net>
Tue, 18 Sep 2012 13:31:17 +0000 (09:31 -0400)
committerOwen W. Taylor <otaylor@fishsoup.net>
Thu, 14 Feb 2013 22:19:48 +0000 (17:19 -0500)
commit69f457426ae2a7b1e2cb8e74034a636831aae079
tree41b4b798c65a55ccacaa13311216ab6f143dbc93
parent1824796bfb643378b72fdacffa9d923379266819
Switch to an extended form of _NET_WM_SYNC_REQUEST_COUNTER

By exporting two XSync counters on a toplevel window, we subscribe
to an extended form of the _NET_WM_SYNC_REQUEST_COUNTER protocol,
where the window manager can initiate an atomic frame, as previously,
but the application can also do so by incrementing the new counter to
an odd value, and then to an even value to finish the frame.

See:
https://mail.gnome.org/archives/wm-spec-list/2011-October/msg00006.html

The support for 64-bit integers that GLib requires is used to
simplify the logic.

https://bugzilla.gnome.org/show_bug.cgi?id=685460
gdk/x11/gdkdisplay-x11.c
gdk/x11/gdkwindow-x11.c
gdk/x11/gdkwindow-x11.h